<?php
    @include_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/Principal.php';

	@session_start();

	$_SESSION['foto'] = "";
	
    //--------------------------------------------------------------------------
    //Procesa las peticiones GET
    //--------------------------------------------------------------------------
	$peticion = $_GET['proceso'];

	if($peticion == "autocomplete")
	{
		
		include $_SERVER[DOCUMENT_ROOT]."/clientes/src/classes/modelo/xmlresponse.php";
		
		$param = $_GET['param'];
		$sugerencias = Usuario::search_in_nombre($param);
		$rtas = array();
		foreach($sugerencias as $value)
		{
			$rtas[] = $value->get_nombre(); 
		}
		   
		 $xml = new xmlResponse(); 
		 $xml->start(); 
		 $xml->command($rtas);  
		 $xml->end(); 
	}
	
    //Procesa si tiene que hacer el proceso de autenticación
	if($peticion == "autenticar")
	{
		$user = $_GET['user'];
		$password = $_GET['password'];

        //inserta el mensaje
        $valido = validar_usuario($user, $password);
        if($valido == -1)
        {
            echo "Contrase&ntilde;a no v&acute;lida. Intente de nuevo.";
        }
        else if($valido == 0)
        {
            echo "Usuario no encontrado.";
        }
        else
        {
			$_SESSION['id_usuario'] = $valido;
            echo $valido;
        }
	}

    //revisa si existe un usuario
    if($peticion == "verificar")
    {
        $user = $_GET['user'];
        if(strlen($user)>0 && strpos($user, "@")>-1){
            echo !existe_usuario($user);
        }else{
            echo false;
        }
    }

    //Procesa al prfil al que debe rediriguir
    if($peticion == "perfil"){
        $id_usuario = $_SESSION['id_usuario'];

        $_SESSION['tipo_usuario'] = dar_tipo_usuario($id_usuario);

        $usuario= new Usuario($id_usuario);
        @$usuario->update_from_database_by_id();

        echo @$usuario->get_id_perfil();

        @$_SESSION['id_usuario_perfil'] = $id_usuario;
    }

    //Procesa la busqueda
    if($peticion == "buscar")
    {
    	$parametros = $_GET['param'];
    	$resultados = dar_resultados_busqueda($parametros);
    }

    //revisa si son contactos
    if($peticion == "contacto"){
        $id_usuario = $_SESSION['id_usuario'];
        $id_usuario_perfil = $_SESSION['id_usuario_perfil'];

        $contacto = es_contacto($id_usuario, $id_usuario_perfil);
        if($contacto){
            echo "true";
        }else if($id_usuario==$id_usuario_perfil){
            echo "mismo";
        }else{
            echo "false";
        }
    }

    //contactar
    if($peticion == "contactar"){
        $id_usuario = $_SESSION['id_usuario'];
        $id_usuario_perfil = $_SESSION['id_usuario_perfil'];

        contactar($id_usuario, $id_usuario_perfil);
        $contacto = es_contacto($id_usuario, $id_usuario_perfil);

        if($contacto){
            echo "true";
        }else{
            echo "false";
        }
    }

    //Cierra la sesión
    if($peticion == "logout"){
        session_unset();
        session_destroy();

        header( 'Location: login.php' ) ;
    }

    //--------------------------------------------------------------------------
    //Procesa las peticiones POST
    //--------------------------------------------------------------------------
    $peticion_post = $_POST['hid_proceso'];

    if($peticion_post == "registro")
    {
        $email = $_POST['txt_correo'];
        $nombre = $_POST['txt_nombre'];
        $apellidos = $_POST['txt_apellidos'];
        $contrasenia = $_POST['pass_registro'];
        $tipo = $_POST['tipo'];

        $usuario = new Usuario(0,$email,$contrasenia,$nombre,$apellidos,$tipo);
        @$usuario->update_database();

        $registro = false;
		if($usuario)
		{
			$registro = true;
		}
        @header('Location: registroOK.php?registro='.$registro);
    }

    if($peticion_post == "actualizar_perfil_artista"){
        $id_usuario = $_SESSION['id_usuario'];
        $foto = $_POST['hid_foto'];
        $ocupacion = $_POST['txt_ocupacion'];
        $acerca = $_POST['txt_acerca'];
        $estado = $_POST['txt_estado'];
        $presentacion = $_POST['txt_presentacion'];

        $perfil = new PerfilArtista(0,$id_usuario,$foto,$ocupacion,$acerca,$estado,$presentacion);
        @$perfil->update_database();
        @$id_perfil = $perfil->get_id();

        $usuario = new Usuario($id_usuario);
        @$usuario->update_from_database_by_id();
        @$usuario->set_id_perfil($id_perfil);
        @$usuario->update_database();

        $tiene_mapa = $_POST['check_map'];

        if($tiene_mapa == "true"){
            $nombre = $_POST['txt_sitio_nombre'];
            $link = $_POST['txt_sitio_link'];
            $direccion = $_POST['txt_sitio_dir'];

            $mapa = new Mapa(0,$nombre,$link,$direccion);
            $mapa->update_database();

            $perfil->set_id_mapa($mapa->get_id());

        }else{
            $perfil->set_id_mapa(0);
        }
        $perfil->update_database();

        header('Location: perfil.php');
    }

    if($peticion_post == "actualizar_perfil_empresario"){
        $id_usuario = $_SESSION['id_usuario'];
        $foto = $_POST['hid_foto'];
        $acerca = $_POST['txt_acerca'];
        $presentacion = $_POST['txt_presentacion'];

        $perfil = new PerfilEmpresario(0,$id_usuario,$foto,$acerca,$presentacion);
        @$perfil->update_database();
        @$id_perfil = $perfil->get_id();

        $usuario = new Usuario($id_usuario);
        @$usuario->update_from_database_by_id();
        @$usuario->set_id_perfil($id_perfil);
        @$usuario->update_database();

        $tiene_mapa = $_POST['check_map'];

        if($tiene_mapa == "true"){
            $nombre = $_POST['txt_sitio_nombre'];
            $link = $_POST['txt_sitio_link'];
            $direccion = $_POST['txt_sitio_dir'];

            $mapa = new Mapa(0,$nombre,$link,$direccion);
            $mapa->update_database();

            $perfil->set_id_mapa($mapa->get_id());
            
        }else{
            $perfil->set_id_mapa(0);
        }
        $perfil->update_database();

        header('Location: perfil.php');
    }

    //Procesa y da el valor de la galeria siguiente
    if($peticion_post == "modificar_galeria_info"){
        $id_usuario = $_SESSION['id_usuario'];
        
        $usuario= new Usuario($id_usuario);
        @$usuario->update_from_database_by_id();

        $id_perfil = $usuario->get_id_perfil();

        $id_producto = $_POST['hid_producto'];
        $nombre = $_POST['txt_nombre'];
        $descripcion = $_POST['txt_descripcion'];
        $tipo = $_POST['txt_tipo'];

        if($id_producto==0){
            $producto = new Producto($id_producto,$id_perfil,$nombre,$descripcion,$tipo);

            @$producto->update_database();

            @$id_producto = @$producto->get_id();
        }else{
            $producto = new Producto($id_producto);
            @$producto->update_from_database_by_id();

            @$producto->set_nombre($nombre);
            @$producto->set_tipo($tipo);
            @$producto->set_descripcion($descripcion);
            
            @$producto->update_database_by_id();
        }

        @header( 'Location: modificar_galeria.php?id='.$id_producto.'&fase=2' ) ;
    }

    //Procesa y da el valor de la galeria siguiente
    if($peticion_post == "agregar_foto_galeria"){
        $id_producto = $_POST['hid_producto'];
        $nombre = $_POST['txt_nombre'];
        $ruta = $_POST['hid_ruta'];
        $descripcion = $_POST['txt_descripcion'];

        $foto = new Foto(0,$id_producto,$ruta,$nombre,$descripcion);
        $foto->update_database();

        @header( 'Location: modificar_galeria.php?id='.$id_producto.'&fase=2' ) ;
    }

    //Procesa y da el valor de la galeria siguiente
    if($peticion_post == "agregar_video_galeria"){
        $id_producto = $_POST['hid_producto'];
        $nombre = $_POST['txt_nombre'];
        $ruta = $_POST['txt_ruta'];
        $descripcion = $_POST['txt_descripcion'];

        $video = new Video(0,$id_producto,$nombre,$ruta,$descripcion);
        $video->update_database();

        @header( 'Location: modificar_galeria.php?id='.$id_producto.'&fase=2' ) ;
    }

    //Procesa y publica una noticia
    if($peticion_post == "publicar_noticia"){
        $id_usuario = $_SESSION['id_usuario'];
        
        $titulo = $_POST['txt_titulo'];
        $descripcion = $_POST['txt_descripcion'];

        $fecha = date("d/m/y - H:m:s");

        $evento = new Evento(0,$id_usuario,$titulo,$fecha,$descripcion);
        $evento->update_database();

        @header( 'Location: noticias.php' ) ;
    }

    //Procesa y crea una sala de chat
    if($peticion_post == "crear_sala"){

        $titulo = $_POST['txt_nombre'];
        $descripcion = $_POST['txt_descripcion'];

        $evento = new Chat(0,$titulo,$descripcion);
        $evento->update_database();

        @header( 'Location: chat.php' ) ;
    }
?>
